public class Main {
    public static void main(String[] args) {
        // 测试用例（注意：Java中反斜杠需转义为\\）
        String source = "\"一般学习一门编程语言的时候，基本上第一个程序是输出\\\"Hello World!\\\"\"";
        System.out.println("源字符串：" + source);

        // 初始化状态机并处理字符
        StringExtractorContext context = new StringExtractorContext();
        for (int i = 0; i < source.length(); i++) {
            context.processChar(source.charAt(i));
            if (context.isCompleted()) break; // 提取完成后停止
        }

        // 输出提取结果
        System.out.println("提取结果：" + context.getResult());
    }
}